import pandas as pd
import os
from doc_utils import read_paragraphs
from datetime import datetime


def export_to_excel(chinese_doc_path, english_doc_path):
    """
    将中英文段落导出到Excel文件进行对照
    保存在以文档名命名的文件夹中
    """
    # 获取文档名（不带扩展名）
    cn_name = os.path.splitext(os.path.basename(chinese_doc_path))[0]
    en_name = os.path.splitext(os.path.basename(english_doc_path))[0]

    # 创建文件夹名称：英文文档名-中文文档名
    folder_name = f"{en_name}-{cn_name}"

    # 创建文件夹（如果不存在）
    os.makedirs(folder_name, exist_ok=True)

    # 生成带日期时间的文件名
    current_time = datetime.now().strftime("%Y%m%d%H%M%S")
    output_file = os.path.join(folder_name, f"{en_name}-{cn_name}-{current_time}.xlsx")

    # 读取段落
    chinese_paras = read_paragraphs(chinese_doc_path)
    english_paras = read_paragraphs(english_doc_path)

    # 确定最大行数
    max_length = max(len(chinese_paras), len(english_paras))

    # 创建DataFrame
    data = {
        "序号": list(range(1, max_length + 1)),
        "英文段落": english_paras + [""] * (max_length - len(english_paras)),
        "中文段落": chinese_paras + [""] * (max_length - len(chinese_paras))
    }

    df = pd.DataFrame(data)

    # 导出到Excel
    df.to_excel(output_file, index=False)
    print(f"✅ 已导出段落对照表到: {output_file}")

    return output_file